<?php
declare (strict_types=1);

namespace app\user\model\user;

use app\common\model\BaseModel;
use think\model\concern\SoftDelete;

/**
 * 定义用户余额模型
 */
class BalanceFlow extends BaseModel
{
    use SoftDelete;

    /**
     * 表名
     *
     * @var string
     */
    protected $name = 'user_balance_flow';

    /**
     * 设置自动写入时间
     *
     * @var boolean
     */
    protected $autoWriteTimestamp = true;
    protected $updateTime = false;
    protected $hidden = ['delete_time'];

    /**
     * 定义字段类型
     *
     * @var array
     */
    protected $type = [
        'id'          => 'integer',
        'user_id'     => 'integer',
        'alter_type'  => 'integer',
        'num'         => 'float',
        'balance'     => 'float',
        'create_time' => 'integer',
    ];

    /**
     * 定义表主键
     *
     * @var string
     */
    protected $pk = 'id';

    public function getAlterTypeAttr($value)
    {
        // 变动类型【
        //1:冻结；
        //2:解冻；
        //3:购买课程；
        //4:购买课时；
        //5:充值会员；
        //6:充值余额；
        //7：充值积分；
        //8：购买考试；
        //9：购买专项；
        //10：购买套卷；
        //11：购买商品；
        //12：收入提现；
        //13：退款；
        //14：系统添加
        //15：系统扣除
        //】
        return in_array($value, [2, 6, 12, 13, 14]) ? 1 : 0;
    }
}
